import axios from 'axios'
import { Message } from 'element-ui';
import { msgWhiteList, authWhiteList } from './whiteList'

// axios.defaults.baseURL  设置请求公共路径
axios.defaults.baseURL = "https://api-hmugo-web.itheima.net/api/public/v1"
// 请求默认时间
axios.defaults.timeout = 30000

// 请求前拦截
axios.interceptors.request.use((config) => {
    // config  当前请求的信息
    // console.log('请求')
    // console.log(config)

    // 判断接口是否要登录
    authWhiteList.forEach(item => {
        if (item === config.url) {
            // config.headers.Authorization   token信息
            const token = sessionStorage.getItem('token') ? sessionStorage.getItem('token') : ''
            config.headers.Authorization = token
        }
    })
    return config
})

// 响应后拦截
axios.interceptors.response.use((data) => {
    const { status } = data
    // data.config.url  本次请求的路劲
    // 白名单  
    // let arr = ["/home/swiperdata"]
    // GET      获取
    // POST     新增
    // PUT      编辑
    // DELETE   删除

    console.log(data)

    msgWhiteList.forEach(item => {
        if ((item.path === data.config.url) && (item.method === data.config.method)) {
            switch (status) {
                case 200:
                    Message.success(data.data.meta.msg)
            }
        }
    })
    // data  本次请求成功返回的数据
    return data.data.message
})

export default axios